From 81dba2e0b93d6706e7c3a0665ae2750a4d299147 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 24 Aug 2004 14:51:39 +0000 Subject: [PATCH] Handle action_group being NULL. (#150869, Tommi Komulainen) 2004-08-24 Matthias Clasen * gtk/gtkaction.c (connect_proxy, disconnect_proxy): Handle action_group being NULL. (#150869, Tommi Komulainen) --- ChangeLog | 5 +++++ ChangeLog.pre-2-10 | 5 +++++ ChangeLog.pre-2-6 | 5 +++++ ChangeLog.pre-2-8 | 5 +++++ gtk/gtkaction.c | 10 ++++------ 5 files changed, 24 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index df26114187..e49030d449 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2004-08-24 Matthias Clasen + + * gtk/gtkaction.c (connect_proxy, disconnect_proxy): Handle + action_group being NULL. (#150869, Tommi Komulainen) + 2004-08-24 Matthias Clasen * gdk/gdkimage.c (allocate_scratch_images): Use the correct diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index df26114187..e49030d449 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,8 @@ +2004-08-24 Matthias Clasen + + * gtk/gtkaction.c (connect_proxy, disconnect_proxy): Handle + action_group being NULL. (#150869, Tommi Komulainen) + 2004-08-24 Matthias Clasen * gdk/gdkimage.c (allocate_scratch_images): Use the correct diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index df26114187..e49030d449 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,8 @@ +2004-08-24 Matthias Clasen + + * gtk/gtkaction.c (connect_proxy, disconnect_proxy): Handle + action_group being NULL. (#150869, Tommi Komulainen) + 2004-08-24 Matthias Clasen * gdk/gdkimage.c (allocate_scratch_images): Use the correct diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index df26114187..e49030d449 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,8 @@ +2004-08-24 Matthias Clasen + + * gtk/gtkaction.c (connect_proxy, disconnect_proxy): Handle + action_group being NULL. (#150869, Tommi Komulainen) + 2004-08-24 Matthias Clasen * gdk/gdkimage.c (allocate_scratch_images): Use the correct diff --git a/gtk/gtkaction.c b/gtk/gtkaction.c index b757957169..c946f79b21 100644 --- a/gtk/gtkaction.c +++ b/gtk/gtkaction.c @@ -784,8 +784,6 @@ static void connect_proxy (GtkAction *action, GtkWidget *proxy) { - GtkActionGroup *group = action->private_data->action_group; - g_object_ref (action); g_object_set_data_full (G_OBJECT (proxy), "gtk-action", action, g_object_unref); @@ -945,15 +943,14 @@ connect_proxy (GtkAction *action, G_CONNECT_SWAPPED); } - _gtk_action_group_emit_connect_proxy (group, action, proxy); + if (action->private_data->action_group) + _gtk_action_group_emit_connect_proxy (action->private_data->action_group, action, proxy); } static void disconnect_proxy (GtkAction *action, GtkWidget *proxy) { - GtkActionGroup *group = action->private_data->action_group; - g_object_set_data (G_OBJECT (proxy), "gtk-action", NULL); /* remove proxy from list of proxies */ @@ -992,7 +989,8 @@ disconnect_proxy (GtkAction *action, G_CALLBACK (gtk_action_create_menu_proxy), action); - _gtk_action_group_emit_disconnect_proxy (group, action, proxy); + if (action->private_data->action_group) + _gtk_action_group_emit_disconnect_proxy (action->private_data->action_group, action, proxy); } void -- 2.30.2